]> permondes.de Git - Analog_Engine.git/blame - AESL/4.11 TwoRaindrops.AESL
Application: 2 raindrops, license CC BY-NC-SA 4.0
[Analog_Engine.git] / AESL / 4.11 TwoRaindrops.AESL
CommitLineData
ae9d78b7
P
1IDENTIFICATION DIVISION
2PROGRAM-ID TwoRaindrops
3VERSION 20240131
4COMMENT Two raindrops of same size and altitude are falling from a cloud.
5COMMENT How long does it take until the touch?
6COMMENT s'' = -2*gamma*m/s^2
7
8ENVIRONMENT DIVISION
9ENGINE Anabrid-THAT
10TIMEBASE 1ms
11REQUIRES COEFFICIENT 3, INVERTER 1, INTEGRATOR 2, COMPARATOR 1, MULTIPLIER 2, OPEN-AMP 1
12
13DATA DIVISION
14OUTPUT OUTPUT.X s_limited
15COEFFICIENT.1 2*radius of the raindrop
16COEFFICIENT.2 initial distance -s0
17COEFFICIENT.3 2*gamma*m
18
19PROGRAM DIVISION
20+1 -> COEFFICIENT.1 -> 2r
212r -> INVERTER.1 -> -2r
22-1 -> COEFFICIENT.2 -> -s0
23+1 -> COEFFICIENT.3 -> 2gamma*m
24s'' -> INTEGRATOR.1 -> -s'
25-s', IC:-s0 -> INTEGRATOR.2 -> s
26
27# The raindrops may only approach until they touch. Our model does not include their unification
28A:s, B:-2r, GT0:s, LT0:2r -> COMPARATOR.1 -> s_limited
29
30s_limited,s_limited -> MULTIPLIER.1 -> s^2
31
32# division 2gamma*m / s^2
33# Open amplifier is realized on THAT by FB:SUMMER.GND -> SUMMER
342gamma*m, inp2 -> OPEN-AMP -> -2gamma*m/s^2=s''
352gamma*m^2, s^2 -> MULTIPLIER.2 -> inp2
36
37OPERATION DIVISION
38MODE REPEAT
39OP-TIME 12ms